1. Field of the Invention
The invention relates to a high-performance disk unit suitable for a disk array and to a storage unit subsystem having a high-performance storage unit and a control unit.
2. Description of Related Art
A disk array or disk unit of the type to which the invention is directed is disclosed by D. Patterson, et al: A Case for Redundant Arrays of Inexpensive Disks (RAID), ACM SIGMOD Conference Proceedings, Chicago, IL, Jun. 1-3, 1988, pp. 109-116. Specifically, Patterson's paper discloses technology related to the distribution of data in a disk array.
A disk array is a system for increasing the performance and reliability of a disk system. For achieving high performance in a disk array, a plurality of physically present disk units are used as a single disk unit. For achieving high reliability, on the other hand, when one or more disk units storing data breaks down redundant data is stored in one or more separate disk units so that the data in the broken down disk unit can be recovered.
The read/write unit of a disk unit is generally referred to as a record. Patterson's paper proposes a number of record distribution methods. In the case of using a disk array, however, the records constituting the read/write units from the viewpoint of the processor and the records actually written to the disk units are sometimes of different length. In this specification, the former will be called the logical record and the latter the physical record. Two of the record distribution methods proposed in Patterson's paper will now be explained.
In the first distribution method, the logical records, i.e. the records from the viewpoint of the processor side are stored in the disk units as divided into m number (m.gtoreq.1) of physical records. This distribution method will hereinafter be called the divided distribution method. (This distribution method is called RAID 3 in Patterson's paper.) When divided distribution is used, a single logical record is transferred to/from m number of disk units and, therefore, it is possible to obtain an effect equivalent to that of increasing the apparent data transfer rate by a factor of m.
The method of generating redundant data in divided distribution will now be explained. In divided distribution, n pieces (n.gtoreq.1) of redundant data are generated with respect to the m number of physical records into which the logical record is divided and each piece (of the total of n pieces) is stored in a disk unit as a physical record. Hereafter, the physical record storing the data directly read and written by the processor will be called the data record and the physical record storing the redundant data will be called the parity record. Ordinarily, if there are n number of parity records in a parity group, it is possible to recover the data in the parity group even if errors occur in up to n number of disk units.
In the second method, the logical record constituting a read/write unit from the viewpoint of the processor is stored in a single disk unit as a single physical record, namely as a single data record. This will hereafter be called undivided distribution. (This distribution method is called RAID 4 or RAID 5 in Patterson's paper.) In this method, the logical record is equivalent to the data record. (Since each physical record is designated to be a data record or a parity record, a physical record and a logical record are not necessarily equivalent. In other words, each logical record is a single physical record but each physical record is not necessarily a single logical record, and may instead be a parity record.) The distinguishable feature of undivided distribution is that each read/write operation can be executed at a single one of the disk units constituting the disk array. (When the divided distribution method is adopted, it is necessary to take over a plurality of disk units for read/write.) Therefore, when undivided distribution is used, it is possible to improve the concurrence of the read/write operation and thus realize enhanced performance. Undivided distribution also involves the generation and storage to disk of n number of parity records from m number of data records. However, differently from divided distribution, in which the set of data records in a parity group forms a single logical record from the viewpoint of the processor, in undivided distribution each data record is an independent logical record from the viewpoint of the processor.
Aside from the foregoing disk array technology, technology involving the use of a disk cache for increasing the speed of the write operation in ordinary disk units has also been disclosed.
Japanese Unexamined Patent Public Disclosures Sho 55-157053 teaches the use of a write-after process for speeding up execution of write requests in a control unit having a disk cache. More specifically, the control unit completes the write process at the stage of having completed writing of the write data received from the processor into the cache. The writing of the data received from the processor and stored in the cache, to the disk unit is done later by the write-after operation executed by the control unit.
Japanese Unexamined Patent Public Disclosure Sho 59-135563 teaches a control unit which speeds up the write process while simultaneously ensuring high reliability.
In Japanese Unexamined Patent Public Disclosure Sho 59-135563, the control unit is provided with a nonvolatile memory in addition to the cache memory and the write data received from the processor is stored in both the cache memory and the nonvolatile memory. For writing of the write data to the disk unit the processor executes a write-after operation. The write-after reliability is thus increased.
Japanese Unexamined Patent Public Disclosure Sho 60-114947 teaches a control unit equipped with a disk cache, which controls a dual write disk unit.
In Japanese Unexamined Patent Public Disclosure Sho 60-114947, the control unit responds to a write request received from the processor by writing the write data received from the processor to one of the disk units and the cache memory. Then, later and asynchronously with the read/write request from the processor, the control unit writes the write data stored in the cache memory to the other disk unit. The control unit's writing of the write data stored in the cache memory to the disk unit at a later time, asynchronously with the read/write request from the processor, is called the write-after operation.
Japanese Unexamined Patent Public Disclosure Hei 2-37418, the control unit again has a nonvolatile memory in addition to the cache memory and stores the write data received from the processor in the cache memory and the nonvolatile memory. Writing of the write data to the two disk units is executed by the control unit by a write-after operation.
Japanese Unexamined Patent Public Disclosure Hei 3-37746, which relates to a control unit that has a disk cache and executes write-after operations, aims at enabling the write-after operations to be executed with good efficiency and teaches a management data structure for this purpose.